#include <iostream>
using namespace std;

class Cat {
  public:
    int age;
    char name[12];
    
    void print(const char *varName) {
      cout << "[" << varName << "] name: " << name << " age: " << age << endl;
    }
};

int main() {
  // 使用默认无参构造
  Cat cat;
  cat.print("cat");

  // 使用默认拷贝构造
  Cat cat2 = cat;
  cat2.print("cat2");

  cat2.age = 20;
  strcpy(cat2.name, "Kitty");
  cat2.print("cat2");
  
  // 使用默认无参构造
  Cat cat3;
  // 使用默认 operator= 赋值
  cat3 = cat2;
  cat3.print("cat3");

  return 0;
}
